.. _ecmIxCfg_MapAxes: ecmIxCfg_MapAxes ===================== --------------------- .. Hint:: :ref:`ECAT_Appendix_00` 사용 가능 SYNOPSIS -------- .. code-block:: none t_cmdidx ecmIxCfg_MapAxes(_FF)( t_i32 NetID, t_i32 MapIndex, t_dword MapMask1, t_dword MapMask2, t_i32 IxMode, t_i32 *ErrCode ) DESCRIPTION ----------- - 이 함수는 보간 작업을 수행할 축들을 맵번호로 맵핑(Mapping)합니다. - 맵번호는 다른 "기본보간제어" 에 관련된 함수들의 두번째 매개변수로 전달되므로써 각 함수들이 제어해야 할 축들에 대한 정보가 간편하게 전달됩니다. - 따라서 다른 보간제어에 관련된 함수들을 사용하기 전에 가장 먼저 이 함수를 사용하여 사용할 축들을 맵핑하여야 합니다. PARAMETER --------- - NetID : Network 번호 - MapIndex : 맵 번호. 맵 번호의 범위는 0 ~ 15 입니다. - MapMask1 : 축맵에 포함할 축들을 지정할 마스크 값(32BIT Bit0 ~ Bit31). 이 값의 Bit0 ~ Bit31을 이용하여 그룹에 포함할 축들을 지정합니다. 각 비트의 값이 0이면 해당 축(비트의 순서와 일치하는 축)은 배제되는 것이며, 1이면 해당 축이 포함되는 것이다. 이 매개변수의 각 비트별 정보는 아래 표와 같다.(아래 표는 8축을 사용하는 경우를 기준으로 하였다) +------------+---------------------------------------------+ | Bit Number | Meaning | +============+=============================================+ | BIT0 | 0번 축의 포함 여부 (0 : 포함안함, 1 : 포함) | +------------+---------------------------------------------+ | BIT1 | 1번 축의 포함 여부 (0 : 포함안함, 1 : 포함) | +------------+---------------------------------------------+ | BIT2 | 2번 축의 포함 여부 (0 : 포함안함, 1 : 포함) | +------------+---------------------------------------------+ | BIT3 | 3번 축의 포함 여부 (0 : 포함안함, 1 : 포함) | +------------+---------------------------------------------+ | BIT4 | 4번 축의 포함 여부 (0 : 포함안함, 1 : 포함) | +------------+---------------------------------------------+ | BIT5 | 5번 축의 포함 여부 (0 : 포함안함, 1 : 포함) | +------------+---------------------------------------------+ | BIT6 | 6번 축의 포함 여부 (0 : 포함안함, 1 : 포함) | +------------+---------------------------------------------+ | BIT7 | 7번 축의 포함 여부 (0 : 포함안함, 1 : 포함) | +------------+---------------------------------------------+ - MapMask2 : 이 매개변수는 보간 제어시 32축 이상을 사용하고자 할 때 사용하는 매개변수 이다. MapMask1 에 포함되지 못한 축들은 이 매개변수를 사용하여 지정한다. - :ref:`Ixmode ` : 보간모드 값 입니다. - ErrCode : 이 매개 변수를 통하여 현재의 에러 코드를 반환합니다. 단, 이 매개 변수에 NULL을 전달하면 에러 코드를 반환하지 않습니다. RETURN VALUE ------------ - 이 리턴값은 함수의 cmdidx가 반환됩니다. EXAMPLE ````````````` .. code-block:: cpp :linenos: //X축과 Y축의 직선보간 // 맵번호 설정 #define MAP0 0 #define AXISX 0 #define AXISY 1 ecmIxCfg_MapAxes (Device_Info.NetIdx, MAP0, 0x3, 0, ecmIX_MODE_LINEAR , &Error_Num); // 또는 ecmIxCfg_MapAxes (Device_Info, 0, AXISX | AXISY, 0, ecmIX_MODE_LINEAR , &Error_Num); //